草庐IT

java - 在java中实例化泛型类型

全部标签

JAVA:使用 XmlStreamReader 收集 xml 标记的字节偏移量

有没有办法使用XMLStreamReader准确收集xml标记的字节偏移量?我有一个需要随机访问的大型xml文件。我不想将整个内容写入数据库,而是希望使用XMLStreamReader运行一次以收集重要标签的字节偏移量,然后能够使用RandomAccessFile稍后检索标签内容。XMLStreamReader似乎没有办法跟踪字符偏移量。相反,人们建议将XmlStreamReader附加到跟踪已读取字节数的阅读器(例如apache.commons.io提供的CountingInputStream)例如:CountingInputStreamcountingReader=newCount

java - 编写 XML 元素时设置属性的顺序

这个问题在这里已经有了答案:OrderofXMLattributesafterDOMprocessing(12个答案)关闭8年前。在java中编写以下内容时:ElementfieldEl=targetDocument.createElement("field");fieldEl.setAttribute("Wine","Marlo");fieldEl.setAttribute("Beer","Corona");添加属性的顺序不会保存在结果XML文件中。我怎样才能控制XML元素中属性的顺序(这样人们就很容易阅读......)??

java - 如何使用 xml 模式验证 xml?

是否可以使用以下模式验证以下xml?我想在不指定xml文件中的模式的情况下验证xml。我不确定这是否可行,但希望有人能帮助我弄清楚如何去做。当我尝试验证xml时,我不断收到以下错误。org.xml.sax.SAXParseException:cvc-elt.1:Cannotfindthedeclarationofelement'contacts'.JoeBuddah123BlackJackCove555-555-1212RayBuddah123BlackJackCove555-555-1212我用来进行验证的Java代码。staticfinalStringJAXP_SCHEMA_SOU

xml - 如何为复合类型创建模式?

我有一个如下所示的XML规范:Thisisthecontentofmysampletextfile....请注意,Directory元素可以包含其他Directory元素。我如何使用W3CSchema来表示它? 最佳答案 你需要创建一个递归的代表你的类型。鉴于您提供的元素,以下是此技术的示例。 关于xml-如何为复合类型创建模式?,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/3

java - 如何在 Java 中有效地读取包含大量小项目的大型 XML 文件?

我有一个很大的XML文件,其中包含相对固定大小的项目,即.........item元素相对较浅且通常很小(如何在Java中高效地处理文件?我无法以DOM形式读取整个文件,而且我不喜欢使用SAX,因为代码变得相当复杂。我想避免将文件拆分成更小的部分。如果我可以获取每个item元素,则最佳情况是一次一个,作为一个单独的DOM文档,我可以使用JAXB等工具进行处理。基本上我只想在所有项目上循环一次。我认为这是一个相当普遍的问题。 最佳答案 Java6有一个StAXsupport.它执行像SAX一样的流处理,但使用基于拉的方法,这导致更简单

<! 的 XML 语法规范> 类型标签

仔细研究了XMLW3CRecommendation1.0,我仍然对XMLW3CRecommendation1.0的一般性质感到困惑类型标签。这些标签背后的基本原理是什么,它们是如何解析的,这种语法是否有任何概括。对我来说,它们似乎是添加到XML中的一个几乎是临时的hack,以促进最初设计XML时没有想到的东西......有效吗and(likeand)标签硬连接到XML标准中,或者我可以定义自己的标签吗?如果是这样,它们如何被解析?我问这个问题是因为我想全面了解XML,而不是因为它会有用;)问候,乔纳斯 最佳答案 这些类型的标签[fo

java - 如何使用 DOM 删除 XML 文档的根节点

我想使用DOMapi从以下XML文档中删除包装器所以我只会将这些作为最终输出:我如何在Java中执行此操作? 最佳答案 您想要执行的操作不会生成格式正确的XML,因为在文档根目录中将有2个元素。但是,下面是执行您想要的操作的代码。它获取包装器元素的子节点,为每个节点创建一个新文档,将节点导入文档并将文档写入字符串。publicStringpeel(StringxmlString){StringWriterwriter=newStringWriter();DocumentBuilderFactoryfactory=DocumentBu

java - 在 SAX 解析期间确定根元素

我正在使用SAX来解析XML文件。假设我希望我的应用程序仅处理具有根元素“animalList”的XML文件——如果根节点是其他东西,SAX解析器应该终止解析。使用DOM,您可以这样做:...ElementrootElement=xmldoc.getDocumentElement();if(!rootElement.getNodeName().equalsIgnoreCase("animalList"))thrownewException("FileisnotananimalListfile.");...但我无法确定如何使用SAX执行此操作-我无法弄清楚如何告诉SAX解析器确定根元素。

java - XML 和 DOM 获取#text 输出

我正在尝试通过遍历子节点列表来读取ColladaXML文件,并且每个其他输出都读取#text。这是怎么回事?我的代码:publicvoidrunTest(){Filefile=newFile("test.dae");DocumentBuilderFactoryfactory=DocumentBuilderFactory.newInstance();DocumentBuilderbuilder=null;try{builder=factory.newDocumentBuilder();}catch(ParserConfigurationExceptionerror){System.out

xml - Java object graph -> xml 当需要反转对象关联的方向时

我正在处理的一个Java应用程序具有与下面类似的关系的对象。在实际应用程序中,两个对象都是JPA实体。classUnderlying{}classThing{privateUnderlyingunderlying;publicUnderlyinggetUnderlying(){returnunderlying;}publicvoidsetUnderlying(finalUnderlyingunderlying){this.underlying=underlying;}}应用程序中需要创建以下形式的xml:所以我们有这样一种情况,对象图以与它在xml中的表达方式相反的方向表达事物和底层之